"""
完成一个对话小程序，客户端可以发送问题给服务端，
服务端接收到问题将对应答案给客户端，客户端打印出来
要求可以同时多个客户端提问，如果问题没有指定答案，
则回答 “人家还小，不知道。”

注意： 不需要使用数据库文件存储应答内容，
在服务端用字典表示关键字和答案之间的对应关系即可
{"key":"value"}
key: 几岁
value ： 我2岁啦
"""
from socket import *

# {key: answer}
answer = {
    "几岁": "我2岁啦",
    "叫什么": "我叫小美",
    "男生女生": "我是机器人",
    "漂亮": "我很漂亮"
}


# 得到问题-》找答案-》发送答案
def chat(conn):
    q = conn.recv(1024).decode()  # 收问题
    for key, value in answer.items():
        if key in q:
            conn.send(value.encode())
            break
    else:
        conn.send("人家还小，不知道啦".encode())


def main():
    sock = socket()
    sock.bind(("0.0.0.0", 8888))
    sock.listen(5)
    # 循环的处理客户端请求
    while True:
        conn, addr = sock.accept()
        chat(conn)
        conn.close()


main()
